When a device is connected to a host system, the host system saves some state information for each device. The state information may include speed of the device or the port number of the port the device was connected to on the host. The state information may also include association information. This association information is generated after going through a process where the user validates that a specific device should be allowed to communicate with their specific host system. This association process is done in different ways for each connectivity technology and is often referred to as bonding or associating a device with a host.
Usually, the association between a host and a device is performed once when the host and the device are first connected. Thereafter, the device may repeatedly connect and disconnect to the host without repeating the association process. The device and the host may connect using stored association information.
Current device/host association models have various shortcomings. Current association technologies often require a user to manually associate each device with each host. Also, when a user acquires a new host machine, the user has to tediously associate all of their devices with the new host machine.
In another instance, the association technology used by a device is not supported by a portable device host (e.g., a media player), but is supported by a Personal Computer (PC) host. In this case, the device may only be associated with the PC host and not the portable device host. A manufacturer of a device or a host may not wish to include a specific association technology because of costs. These costs may be related to the actual cost of additional hardware (e.g., processors capable of performing certain forms of encryption for association) or they may be related to design costs (e.g., implementing a USB port or a LCD display on a device).